// // 数组类型：

export default {}
// 1. 语法1：
// var zrp = ['张荣平','男',23]
//  数组是存储一组相同或者相似数据类型的数据的集合
var list: Array<number> = [1,2,3,4,4]

list.push(12)

// list.push('af') //类型“string”的参数不能赋给类型“number”的参数。

// 2. 语法2：

var tableData: number[] = new Array()

tableData.push(1)
// tableData.push("1122sts") //类型“string”的参数不能赋给类型“number”的参数。

// 3. 函数的形参数组的问题
// 对任意数字求和
function sum(...args: number[]):number{ // arguments对象
// console.log('arge', args);
 // reduce() 方法对数组中的每个元素按序执行一个由您提供的 reducer 函数，每一次运行 reducer 会将先前元素的计算结果作为参数传入，最后将其结果汇总为单个返回值。
  // Array.prototype.reduce(reducer回调函数， 初始化的值。)， 实现一个累加求和的功能。
return args.reduce(
  // 参数1，叫reducer函数
  (sum, value)=>{ // sum就相当于是定义的求和的变量， value就是循环里面每一个数字元素的值。
    return sum + value  // return 的结果，会在赋值给sum变量。
  },
   0  // sum = 0
)

}

console.log(sum(1,2,3,4,5))